Comparative and analytic apparatus method for converting two-dimensional bit map data into three-dimensional data

ABSTRACT

A method is provided for converting a two-dimensional image or bitmap of a handwritten manuscript into three-dimensional data The three-dimensional data can be used to automatically recognize features of the manuscript, such as characters or words. The method includes the steps of: converting the two-dimensional image into three-dimensional volumetric data; filtering the three-dimensional volumetric data; and processing the filtered three-dimensional volumetric data to resolve features of the two-dimensional image. The method can be used, for example, to differentiate between ascenders, descenders, loops, curls, and endpoints that define the overall letter forms in handwritten text, manuscripts or signatures.

RELATED APPLICATION DATA

This application is based on and claims the benefit of U.S. ProvisionalPatent Application No. 60/451,123 filed on Feb. 27, 2003, the disclosureof which is incorporated herein by this reference.

BACKGROUND

This invention relates generally to automatic optical recognition oftwo-dimensional image data. More specifically, it relates to anapparatus and method for recognizing and analyzing two-dimensional imagedata, such as typewritten or printed text, by converting thetwo-dimensional data into three-dimensional data.

The problem of recognizing written characters by machine has beeninvestigated in great detail. Many digital library projects have focusedon application of automating character recognition to create computeraccessible collections of historic and cultural materials to supportscholarship in the humanities. Once in digital form, the ability tostore, enhance, search and interact with the content permits powerfulanalysis and comparison. The original written resources involved inthese projects range from typewritten or printed text, to handwrittenmanuscripts that can vary dramatically in the form and structure of thewritten characters.

Most digital library projects involving handwritten manuscripts workwith images and human translations of handwritten materials. Someprevious projects, however, have attempted to digitize and automaticallytranslate handwritten manuscript materials using optical characterrecognition (OCR) techniques to convert the materials tomachine-readable form. These projects include those described by Rath,T. and Manmatha, R., “Features for Word Spotting in HistoricalManuscripts,” Proceedings of ICDAR 2003 Conference, Vol. 1, 218-22(2002); T. Theeramunkong, C. Wongtapan, S. Sinthupinyo, “OfflineIsolated Handwritten Thai OCR Using Island Based Projection with N-GramModels and Hidden Markov Models,” Proceedings of ICADL 2002, Vol. 2555,340-51 (2002); and T. Theeramunkong, V. Sornlertlamvanich, T.Tanhermhong, W. Chinnan, “Character Cluster Based Thai InformationRetrieval,” Proceedings of the Fifth International Workshop onInformation Retrieval with Asian languages, Hong Kong, China, 75-80(2000); as well as the Shuhai Wenyuan Classical Chinese Digital Databaseand Interactive Internet Worktable project at the University of Hawaiiat Manoa.

Automated recognition to provide access to printed textual materialsinvolves scanning and computer assisted character recognition, typicallyusing an OCR program to identify the letter forms to “translate” fromthe graphic image output of the scanner. The general process ofcharacter recognition of handwritten manuscripts is based ontwo-dimensional image recognition or stochastic methods applied to thetwo dimensional image. These include, for example, neural networking andHMM (Hidden Markov Models). In all cases, the script (page, letters,words etc.) is represented as two-dimensional bitmaps. Various methodsthen try to infer the letter from this two-dimensional image.

The key to machine recognition of handwritten materials is the abilityto differentiate between the ascenders, descenders, loops, curls, andendpoints that define the overall letter forms. Identification ofcontractions, abbreviations, and punctuation creates similar challenges.Development of the techniques to extract the features from a handwrittenline of characters is a significant challenge for computer scientistsand has resulted in techniques to extract, sequence, cluster,categorize, and compare features to attempt to recognize and assignmeaning to a given character.

The accuracy of the OCR process is directly proportional to the quality,regularity and resolution of the letter forms. For mechanicallyreplicated letter forms, such as typed or typeset materials, thisprocess is relatively straightforward. For handwritten materials withvariation in letterform, however, the problem of recognition isextremely complex because the letter forms can vary significantlythroughout a document. Human intervention can be used to identify andprompt problem letter forms and assist in “training” the OCR programs,which can significantly improve accuracy as similar documents arescanned.

Even with human intervention, however, complete recognition iscomplicated dramatically for handwritten materials, such as manuscriptsor musical scores, due to variables in the content. One of the variablesin handwritten content is the letter forms that vary significantlythroughout the document. This problem is compounded when the letterforms overlap or merge with adjacent characters. Consequently theaccuracy rates for OCR plunge dramatically even with human interventionto correct and train the recognition software, and accuracy rates fallbelow perfect recognition. For handwritten materials the accuracy ratereaches 85-90% for closed tests, but open tests where “trained” OCRprograms are used to recognize new text similar to the proposed project,current accuracy rates range from 60-75%.

FIGS. 1 and 2 show two examples of the type of complex handwrittenmaterials that illustrate some of the complexities that present problemsin the automatic recognition of such text. FIG. 1 shows an example ofhandwritten text, and FIG. 2 shows an example of a rubric from Spanisharchives from the 17^(th) century. These examples have been providedthrough the courtesy of the Hispanic Research Center at Arizona StateUniversity in Tempe, Ariz. The example of FIG. 1 shows the cursivewriting with varying letter forms and overlapping characters that mustbe recognized automatically. In addition, these manuscripts includeabbreviations, rubrics, and signatures that must be interpreted, such asthe rubric shown in FIG. 2. These examples demonstrate some of theproblems presented in attempting to automatically recognize handwrittentext. For instance, the cursive writing style of the examples results ina lack of separation between characters, which makes automaticrecognition more difficult. They also demonstrate variation of letterforms. Unlike type written or printed text, each character variesslightly in shape and size from identical characters elsewhere in thedocument even when created by the same individual. For example, thebottom loop of the letter “y” in FIG. 1 runs into the line below it. Inaddition, the examples show different writing styles. They are writtenby different people and include different styles of cursive writing. Theexamples also show rubrics and abbreviations, i.e., sprinkled throughoutthe manuscripts are graphic images that convey meaning and must berecognized and associated with meaning more complex than a singleletterform. They also illustrate accents and omitted characters.Accents, notations and sometimes missing characters are inserted betweenthe rows of characters. These features of handwritten manuscriptsgreatly increase the complexity of the problem of automatic recognitionof such manuscripts.

It is an object of the present invention to provide an apparatus andmethod for addressing the problems presented in attempting toautomatically identify complex two-dimensional image data, such ashandwritten text, manuscripts, signatures and the like.

Additional objects and advantages of the invention will be set forth inthe description that follows, and in part will be apparent from thedescription, or may be learned by practice of the invention. The objectsand advantages of the invention may be realized and obtained by means ofthe methods and apparatus pointed out in the appended claims.

SUMMARY

To achieve the foregoing objects, and in accordance with the purposes ofthe invention as embodied and broadly described in this document, thereis provided a method for converting a two-dimensional image or bitmapinto three dimensional data. The two-dimensional image can represent ahandwritten manuscript. A presently preferred method of the inventionincludes the steps of: converting the two-dimensional image intothree-dimensional volumetric data; filtering the three-dimensionalvolumetric data; and processing the filtered three-dimensional (3D)volumetric data to resolve features of the two-dimensional image. Theprocessing of the volumetric data can include using an isosurfaceextraction to extract a 3D surface mesh representing the image. Theextracted surface mesh representation can then be used to resolvefeatures of the two-dimensional image, such as separating overlappinglines in the manuscript. The processing of the volumetric data caninclude determining an axis or curve representing the median of atubular portion of a surface mesh representation of the filteredthree-dimensional volumetric data. The method can be used, for example,to differentiate between the ascenders, descenders, loops, curls, andendpoints that define the overall letter forms in a handwrittenmanuscript.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate the presently preferredembodiments and methods of the invention. Together with the generaldescription given above and the detailed description of the preferredembodiments and methods given below, they serve to explain theprinciples of the invention.

FIG. 1 is an exemplary image of a handwritten manuscript, whichillustrates some of the complexities of handwritten text that presentproblems in the automatic recognition of such text.

FIG. 2 shows an exemplary image of a rubric from a handwrittenmanuscript, which further illustrates complexities of handwritten textthat present problems in the automatic recognition of such text.

FIG. 3 shows an exemplary image of original handwritten text to beprocessed for automatic recognition in accordance with the presentinvention.

FIG. 4 shows the letter “l” appearing in the handwritten text of FIG. 3and isolated from that text.

FIG. 5 shows chain code for the letter “l” of FIG. 4.

FIG. 6 is a block flow diagram of the process for converting atwo-dimensional bitmap into three-dimensional data according to theinvention.

FIG. 7 shows a three-dimensional representation of the surface mesh andtubular structures included in the mesh, which result from processingthe two-dimensional image of a portion of the handwritten text of FIG. 3according to the present invention.

FIG. 8 shows a three-dimensional representation of the surface mesh andtubular structures included in the mesh, which result from processingthe two-dimensional image of the rubric of FIG. 2 according to theinvention.

FIG. 9 shows a two-dimensional scanned image of initials “AR” written onpaper using a felt-tipped marker.

FIG. 10 shows a three-dimensional representation of the surface mesh andtubular structures included in the mesh, which result from processingthe two-dimensional image of FIG. 9.

FIG. 11 shows a three-dimensional representation of the surface mesh andtubular structures included in the mesh, which result from processingthe two-dimensional image of another example of the handwritten letter“l”.

FIG. 12 shows the three-dimensional surface mesh of FIG. 11 rotated onits “side” to show how the three-dimensional representation clearlyseparates overlap in the loop in the letter “l”.

FIG. 13 shows the medial curve of the three-dimensional representationof the letter “l” of FIG. 11.

FIG. 14 shows the three-dimensional curve of FIG. 13 rotated at anangle, demonstrating the three-dimensional aspects of the curve.

FIG. 15 shows the three-dimensional curve of FIG. 13 rotated at adifferent angle.

DESCRIPTION

Reference will now be made in more detail to the presently preferredembodiments and methods of the invention as illustrated in theaccompanying drawings. While the present invention will be describedmore fully hereinafter with reference to these examples and accompanyingdrawings, in which aspects of the preferred manner of practicing thepresent invention are shown, the description which follows is to beunderstood as being a broad, teaching disclosure directed to persons ofskill in the appropriate arts, and not as limiting upon the presentinvention.

The present invention focuses on enhancing the capacity to automaticallyrecognize complex two-dimensional information, such as handwrittenmanuscripts. The process of automatic recognizing handwrittenmanuscripts having the complexities discussed above can be broken downinto the following major steps: (1) separating the rows of characters;(2) breaking down each word and then each character into an individualunit; (3) attaching meaning to characters, rubrics, and abbreviations;(4) proofing and correcting, initially to train the optical characterrecognition (OCR) program, then also to correct errors and addinformation not identified by the process; and (5) translating to otherdialects and languages. The present invention can be used to addresseach of these steps.

Let us for the moment focus on individual characters. Chain codes can beused to approximate individual characters by straight-line segments. Theuse of chain codes is a well-known method for contour coding. Considerthe example shown in FIGS. 4-5 and focus on the letter “l”. A chain codecan be considered as a piecewise linear approximation parameterizedaccording to the movement of the pen. This means that the letter “l”must be approximated by straight-line segments, i.e. broken down intosimple subunits. However the segments must be connected sequentially inthe same manner as when the person wrote the letter. In case of thisexample, however, there is a loop in the letter “l”. Starting from left(assuming the writer wrote left to write) the pen moves right and up andthen comes down goes over the previous mark and ends on the right. Theresulting chain code is shown in FIG. 5. The arrows 10 show the firsthalf and the arrows 20 show the latter half in writing the letter “l”.By using the method of the invention, loops of a character, such as theloop of the “l” in FIGS. 4 and 5, can be separated and converted intochain codes, as described below more fully. The invention can thusgreatly simplify the task of separating characters (overlaps) andidentifying the chain codes correctly within a single unit or character.

When a person writes with a pen on paper, the pen usually does notresult in a stroke of opaque color on the paper. Rather, the color ofthe ink in the pen will combine with the color of the paper on which theink is deposited. Thus, if a person writes a line that crosses anotherline, the effect is that the point where the two lines cross will appeardarker than either line itself appears. Additionally, fluctuations inthe pressure applied to the pen will affect the amount of ink dispensedas an individual writes. This results in changes in the amount of ink onthe document, and affects the opacity and darkness of the line beingdrawn.

Where two lines cross on a piece of paper, a person can oftenintuitively sense which line passes above the other. Beginning artistsare encouraged to explore this effect of how lines are perceived bydoing line and contour drawings. Subtle variations in the intensity ofthe line give a viewer a sense of dimension that assists in recognizingwritten text. Some lines appear to come forward while others appear tosink backward, so even without chiaroscuro-shading or perspective, aclear impression of depth can be conveyed on an approximatelytwo-dimensional piece of paper.

Given a sample of handwriting as a two-dimensional bitmap array ofscalar intensity values, the present invention can be used to find athree-dimensional volume that will highlight the effects of the changesin opacity of the pen stroke. Successful application of this approach isbased on several assumptions: (i) that the 3D volume data reflects theimpression of depth and thickness of the line; (ii) that sufficientdifferences exist to mark relative depths where two lines cross; and(iii) that the volume data can consistently indicate which linesconnect, and which lines pass in front of the others.

According to, the present invention, a two-dimensional script, image orbitmap is converted into three-dimensional data using a novel process.This three-dimensional data can be used to assist with the automaticrecognition of the two-dimensional information. This technique providesa unique approach to character recognition not used by previous methods.

Referring to FIG. 6, a presently preferred method of the inventionincludes the steps of: converting a two-dimensional image intothree-dimensional volumetric data (step 100) i.e. voxelizing the data;applying filtering to smooth the voxel (volumetric) data (step 102);extracting from the voxel data a three-dimensional surface mesh (step104) representing the character, which mesh includes one or more tubularstructures; and post-processing the three-dimensional surface mesh (step106) to find the medial axis or curves representing the median of thetubular structures of the surface mesh.

Converting 2D Bitmap Data to 3D Volume Data

According to a presently preferred method, the two-dimensional bitmapdata is converted to three-dimensional volume data (step 100) asfollows. First, the pixel at position (x, y) of the 2D bitmap iselevated to a voxel based on the value at pixel[x,y] so that the higherthe intensity of the pixel, the higher the z-component of the voxel.Starting with a volume of all 0 voxels, those voxels near (x, y,pixel(x, y)) are given an intensity related to the intensity of theoriginal pixel. Just using the original intensity works well. It will beunderstood, however, that other functions of the original intensity alsocan be used such as, for example, an exponential function.

After the voxels have been set, a number of scattered, unconnectedpoints appear in the volume. Attempting to view the volume at this pointwould reveal mostly noise. To address this issue, the volume data can befiltered (step 102).

Filtering

Filtering to smooth the voxel data (step 102) can fill in all of thegaps and can be achieved by applying a blurring filter to the volumedata. This filtering allows connections to form between voxels that arenear each other to begin to form patterns. Multiple iterations ofblurring can be performed until the points have melted into a field thathas the highest intensity roughly along the path that a person wouldimagine a line follows on a piece of paper.

In a presently preferred method, the first filter used is a simplemoving average filter. Each voxel is set to the value of the voxel+½ ofthe mean of all of the 26 neighbors of the voxel. The resulting averagesare then allowed to feed into each other—computing a new value forvoxel(x, y, z), and then using that newly computed value to find the newvalue for voxel(x+1, y, z). This type of filter is commonly used in 2Dimage editing tools to blur images. It will be understood by those ofskill in the art, however, that other types of standard filters can alsobe applied to filter the volume data. One such filter, for example, isthe Gaussian filter.

Exemplary pseudocode for implementing the conversion of two-dimensionaldata to three-dimensional volume data and for filtering the volume datais set forth below. By implementing this pseudocode on a computerreadable medium a computer can be programmed for convertingtwo-dimensional data to three-dimensional volume data according to theinvention.

3D Surface Extraction  1 //Generate the volume (width by height by 15) 2 For z = 0 . . . 15−1  3 For x = 0 . . . width−1  4 For y = 0 . . .height−1  5 If pixel[x,y] in z*16−30 . . . z*16+30  6 Voxel[x,y,z] =pixel[x,y]  7 Else  8 Voxel[x,y,z] = 0  9 10 11 //Apply the filter Ktimes 12 For i = 0 . . . K−1 13 For z = 0 . . . 15−1′ 14 For x = 0 . . .width−1 15 For y = 0 . . . height−1 16 Voxel[x,y,z] = (26*voxel[x,y,z] +voxel[x−1,y,z] +. . . + voxel[x−1,y−1,z−1])/(2*26)

Once the scanned two-dimensional data is converted intothree-dimensional data (step 100) and appropriate filtering is used(step 102), an isosurface extraction algorithm can be applied to thethree-dimensional data (step 104) to render an isosurface in thevolumetric data.

One suitable isosurface extraction algorithm is a Marching Cubesalgorithm, which is an algorithm for creating a polygonal surfacerepresentation of an isosurface through a 3D scalar field. Using aMarching Cubes program, one can define a voxel (or cube) by the pixelvalues at the eight corners of the cube. If one or more pixels of a cubehave values less than the user-specified isovalue, and one or more havevalues greater than this value, then the voxel must contribute somecomponent of the isosurface. By determining which edges of the cube areintersected by the isosurface, one can create triangular patches thatdivide the cube between regions within the isosurface and regionsoutside. By connecting the patches from all cubes on the isosurfaceboundary, one can generate a surface representation. The Marching Cubesalgorithm is well known in the art and is described more fully inLorensen, W. E. and H. E. Cline, “Marching Cubes: A High Resolution 3DSurface Construction Algorithm, Computer Graphics, vol. 21, no. 3, pp.163-169 (July 1987) and in Watt, A., and Watt, M., Advanced Animationand Rendering Techniques (Addison-Wesley, 1992).

As will be apparent to those of ordinary skill in the art, there aremany segmentation methods other than the Marching Cubes method that maybe used for surface extraction from the 3D data. Segmentation of volumedata is a process of voxel classification that extracts regions byassigning the individual voxels to classes in such a way that thesesegmented regions possess the following properties: (1) voxels withinthe same region are homogeneous with respect to some characteristic(e.g., gray value or texture); and (2) voxels of neighboring regions aresignificantly different with respect to the same characteristic. Oneexample of such a segmentation method is described by A. Huang, G.Nielson, A. Razdan, G. Farin, D. Capco, and P. Baluch, “Line and NetPattern Segmentation using Shape Modeling” IS&T/SPIE Conference,Visualization and Data Analysis 2003. Another example is described by J.Hu, A. Razdan, G. Nielson, G. Farin, D. Baluch, and D. Capco, “VolumeSegmentation Using Weibull E-SD Fields,” IEEE Transactions onVisualization and Computer Graphics 9(3): 320-328 (2003). Still anothersuitable segementation process is described by J. Hu, G. Farin, M.Holecko, S. Massia, G. Nielson and A. Razdan, “Statistical 3DSegmentation with Greedy Connected Component Labelling Refinement,”Bioengineering Department, PRISM Lab and Computer Science Department,Arizona State University, Tempe, Ariz. The segmentation processdescribed in International Application No. PCT/US03/10665 entitled“Three-Dimensional Digital Library System” and filed on Apr. 4, 2003,can be used to preprocess and improve the surface extraction. Thedescriptions of these segmentation process are incorporated herein inthere entirety by this reference.

After the isosurface extraction algorithm is applied, the resulting meshis a collection of triangles that converts the line or stroke into athree-dimensional surface mesh in the form of a tubular structurerepresenting the line or stroke. This structure provides the dimensionaldata to detect which line segment of overlapping line segments lies ontop of the other.

FIG. 7 shows an exemplary three-dimensional representation of thesurface mesh and tubular structures of the mesh. The three-dimensionalsurface mesh of FIG. 7 results from processing the two-dimensional imageof a portion of the handwritten text of FIG. 3 according to the presentinvention.

FIG. 8 shows a three-dimensional representation of the surface mesh andtubular structures included in the mesh, which result from processingthe two-dimensional image of the rubric of FIG. 2 according to theinvention. Comparing FIG. 8 to FIG. 2, it will be noted that thethree-dimensional representation of FIG. 8 has been rotated todemonstrate the three-dimensional aspects of the representation.

As another example, FIG. 9 shows a two-dimensional scanned image ofinitials “AR” written on paper using a felt-tipped marker. FIG. 10 showsa three-dimensional representation of the surface mesh and tubularstructures included in the mesh, which result from processing thetwo-dimensional image of FIG. 9.

FIG. 11 shows another example of a three-dimensional representation ofthe surface mesh and tubular structures included in the mesh, whichresult from processing the two-dimensional image of another example ofthe handwritten letter “l”. The surface mesh was generated using theMarching Cubes process. FIG. 12 shows the three-dimensional surface meshof FIG. 11 rotated on its “side” to show how the three-dimensionalrepresentation clearly separates the overlap of the loop in the letter“l”.

As can be seen from FIGS. 7, 8, and 10-12, the 3D surface mesh resultingfrom surface extraction (step 104) can clearly separate the loops of acharacter. This greatly simplifies the tasks of identifying the chaincodes correctly within a single unit or character. Similarly, the 3Dsurface mesh can separate overlapping characters, such as when a letterfrom one row of text intersects letters from a different row of text.Since we can distinguish the surfaces we can therefore distinguish whichis the intruding surface and effectively eliminate or better separatethe two characters.

Post-Processing

Further processing of the volume data can be performed (step 106) tofind the medial axis or curves representing the median of the tubularstructures of the surface or mesh representation. Since we candistinguish between the surfaces (i.e., which one is on top or bottom ina loop) we can effectively parameterize the axis or curve. Theparameterized curve then solves the chain code problem encountered by 2Dmethods, which cannot distinguish lines that cross over, such the linesin a loop. This also can be used to solve the problem of identifyingoverlapping characters. For example, FIG. 13 shows a medial curve of thethree-dimensional representation of the letter “l” of FIG. 11. FIG. 14shows the three-dimensional curve of FIG. 13 rotated at an angle,demonstrating the three-dimensional aspects of the curve. FIG. 15 showsthe three-dimensional curve of FIG. 13 rotated at a different angle.

CONCLUSION

The above-described method and system of the present invention possessesnumerous advantages as described herein. Additional advantages andmodifications will readily occur to those skilled in the art. Therefore,the invention-in its broader aspects is not limited to the specificdetails, representative devices, and illustrative examples shown anddescribed. Accordingly, departures may be made from such details withoutdeparting from the spirit or scope of the general inventive concept.

1. A method for automatically extracting and recognizing features in atwo-dimensional image comprising a plurality of pixels, wherein eachpixel has associated position coordinates (X,Y) and an associatedintensity (L), the method comprising: converting by a processor thetwo-dimensional image into three-dimensional volumetric data, including:associating a plurality of voxels with each pixel, wherein each of theplurality of voxels has associated position coordinates (X,Y,Z) and canhave a value (V); and using the pixel intensity (L) and the voxelcoordinate (Z) to derive the value (V) for each of the plurality ofvoxels; applying a filtering process to produce filteredthree-dimensional volumetric data wherein the plurality of voxel values(V) are redistributed; and processing the filtered three-dimensionalvolumetric data to partition the data into features.
 2. The method ofclaim 1 wherein the two-dimensional image represents a handwrittenmanuscript.
 3. The method of claim 1 comprising using an isosurfaceextraction process to extract a surface mesh representation of theimage.
 4. The method of claim 3 comprising determining an axis or curverepresenting the median of a tubular structure included in the surfacemesh representation.
 5. The method of claim 3 comprising using theextracted surface mesh representation to resolve overlapping lines inthe two dimensional image.
 6. A method for automatically extracting andrecognizing features in a two-dimensional image comprising a pluralityof pixels, wherein each pixel has an associated position (X,Y) and anintensity (L), the method comprising: converting by a processor thetwo-dimensional image into three-dimensional volumetric data, including:associating a plurality of voxels with each pixel, wherein each of theplurality of voxels has associated position coordinates (X,Y,Z) and canhave a value (V); and using the pixel intensity (L) and the voxelcoordinate (Z) to derive the value (V) for each of the plurality ofvoxels; applying a filtering process to produce filteredthree-dimensional volumetric data wherein the plurality of voxel values(V) are redistributed; processing the filtered three-dimensionalvolumetric data to partition the data into features, including applyinga threshold to the filtered three-dimensional volumetric data.
 7. Themethod of claim 6 wherein the two-dimensional image represents ahandwritten manuscript.
 8. The method of claim 6 further comprisingusing a surface mesh representation extracted using an isosurfaceextraction process to resolve features of the two-dimensional image. 9.The method of claim 6 comprising determining an axis or curverepresenting the median of a tubular portion of a surface meshrepresentation of the filtered three-dimensional volumetric data. 10.The method of claim 6 comprising using the filtered three-dimensionalvolumetric data to resolve overlapping lines in the two dimensionalimage.
 11. A computer-readable medium for automatically extracting andrecognizing features in a two-dimensional image comprising a pluralityof pixels, wherein each pixel has an associated position (X,Y) and anintensity (L), the medium comprising: computer-executable instructionsfor: converting the two-dimensional image into three-dimensionalvolumetric data, including: associating a plurality of voxels with eachpixel, wherein each of the plurality of voxels has associated positioncoordinates (X,Y,Z) and can have a value (V); and using the pixelintensity (L) and the voxel coordinate (Z) to derive the value (V) foreach of the plurality of voxels; applying a filtering process to producefiltered three-dimensional volumetric data wherein the plurality ofvoxel values (V) are redistributed; and processing the filteredthree-dimensional volumetric data to partition the data into features.12. The computer-readable medium of claim 11 wherein the two-dimensionalimage represents a handwritten manuscript.
 13. The computer-readablemedium of claim 11 wherein the computer-executable instructions furtherinclude instructions for using an extracted surface mesh representationof the image to resolve features of the two-dimensional image.
 14. Thecomputer-readable medium of claim 13 wherein the computer-executableinstructions further include instructions for determining an axis orcurve representing the median of a tubular structure included in thesurface mesh representation.
 15. The computer-readable medium of claim13 wherein the computer-executable instructions further includeinstructions for using the extracted surface mesh representation toresolve overlapping lines in the two dimensional image.
 16. Acomputer-readable medium for automatically extracting and recognizingfeatures in a two-dimensional image comprising a plurality of pixels,wherein each pixel has an associated position (X,Y) and an intensity(L), the medium comprising: computer-executable instructions for:converting the two-dimensional image into three-dimensional volumetricdata, including: associating a plurality of voxels with each pixel,wherein each of the plurality of voxels has associated positioncoordinates (X,Y,Z) and can have a value (V); and using the pixelintensity (L) and the voxel coordinate (Z) to derive the value (V) foreach of the plurality of voxels; applying a filtering process to derivefiltered three-dimensional volumetric data wherein the plurality ofvoxel values (V) are redistributed; and processing the filteredthree-dimensional volumetric data to partition the data into features,including applying a threshold to the filtered three-dimensionalvolumetric data.
 17. The computer-readable medium of claim 16 whereinthe two-dimensional image represents a handwritten manuscript.
 18. Thecomputer-readable medium of claim 16 wherein the computer-executableinstructions include instructions for using an extracted surface meshrepresentation to resolve features of the two-dimensional image.
 19. Thecomputer-readable medium of claim 18 wherein using the extracted surfacemesh representation comprises determining an axis or curve representingthe median of a tubular structure included in the surface meshrepresentation.
 20. The computer-readable medium of claim 18 whereinusing the extracted surface mesh representation comprises resolvingoverlapping lines in the two dimensional image.